<?php

namespace app\admin\model;

use think\Model;

class Barcodegen  extends Model
{   
     // 无需登录的接口,*表示全部
    protected $noNeedLogin = ['*'];
    // 无需鉴权的接口,*表示全部
    protected $noNeedRight = ['*'];
 
    public function barcode_create($text='',$url="",$barcode_name='BCGcode128')
    {
        require_once(EXTEND_PATH.'barcodegen/class/BCGFont.php');
        require_once(EXTEND_PATH.'barcodegen/class/BCGColor.php');
        require_once(EXTEND_PATH.'barcodegen/class/BCGDrawing.php');
    //条形码编码
        $codebar = $barcode_name;
    // 包括条形码技术
        include(EXTEND_PATH.'barcodegen/class/'.$codebar.'.barcode.php');
    // 加载字体
        $font = new \BCGFont(EXTEND_PATH.'barcodegen/class/font/Arial.ttf', 13);
    // 参数是R，G，B的颜色。
        $color_black = new \BCGColor(0, 0, 0);
        $color_white = new \BCGColor(255, 255, 255);
        $code = new $codebar();
        $code->setScale(2); // Resolution
        $code->setThickness(30); // Thickness
        $code->setForegroundColor($color_black); // Color of bars
        $code->setBackgroundColor($color_white); // Color of spaces
        $code->setFont($font); // Font (or 0)
        //条码下的数字
//        $text = $_REQUEST['text'];
        $code->parse($text);
        /**这里是参数列表
        1文件名（空：屏幕上显示）
        2 -背景色*/
        $drawing = new \BCGDrawing($url, $color_white);
        $drawing->setBarcode($code);
        $drawing->draw();
 
//        标头为图像（如果将条形码保存到文件中，将其删除）
        header('Content-Type: image/png');
//绘制（或保存）图像到PNG格式。
        $drawing->finish(\BCGDrawing::IMG_FORMAT_PNG);
    }

   

}


